package com.smartfactory.sail.vo.cust;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.smartfactory.sail.entity.enums.CustContactStatusEnum;
import com.smartfactory.sail.entity.enums.SexEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * 客户联系人
 * </p>
 *
 * @author 王巨壁
 * @since 2019-08-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "添加企业联系人", description = "添加企业联系人")
public class AddCustContactsReq implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "所属企业")
    @TableField("custId")
    private Long custId;

    @ApiModelProperty(value = "信息类型")
    @TableField("informationType")
    private String informationType;

    @ApiModelProperty(value = "信息内容")
    @TableField("informationInfo")
    private String informationInfo;

    @ApiModelProperty(value = "联系姓名")
    @TableField("userName")
    private String userName;

    private String phone;

    @ApiModelProperty(value = "联系人地址")
    private String addr;

    @ApiModelProperty(value = "性别1男2女")
    private SexEnum sex;

    @ApiModelProperty(value = "微信openId")
    @TableField("wxOpenId")
    private String wxOpenId;

    @ApiModelProperty(value = "邮箱")
    private String email;

    @ApiModelProperty(value = "wx账号")
    @TableField("wxAccount")
    private String wxAccount;

    @ApiModelProperty(value = "职位")
    private String post;

    @ApiModelProperty(value = "关怀周期天数")
    @TableField("careCycle")
    private Integer careCycle;

    @ApiModelProperty(value = "提前关怀天数")
    @TableField("advanceDays")
    private Integer advanceDays;

    @ApiModelProperty(value = "上次关怀时间yyyy-MM-dd")
    @TableField("lastTime")
    private String lastTime;

    @ApiModelProperty(value = "客户评价")
    private String evaluate;

    @ApiModelProperty(value = "合作状态1正常2取消关怀")
    private CustContactStatusEnum status;

    @ApiModelProperty(value = "第一次合作时间")
    @TableField("firstCooperation")
    private String firstCooperation;

    @ApiModelProperty(value = "客户联系方式:key是联系方式value是信息内容")
    private List<Map<String,String>> contactsInfoMap;

    //关怀信息
    @TableField("careType")
    private String careType;

    @TableField("careInfo")
    private String careInfo;

    @TableField("carePrice")
    private BigDecimal carePrice;

    @ApiModelProperty(value = "凭证照片id")
    @TableField("imageId")
    private Long imageId;

    @ApiModelProperty(value = "关怀时间")
    @TableField("careTime")
    private String careTime;

}
